package com.lenovo.locationmanager;

import android.content.Context;
import android.content.SharedPreferences;


/**
 * @ProjectName: Translation
 * @Package: com.lenovo.translatetext.utils
 * @ClassName: SpUtils
 * @Description: SpUtils类作用描述
 * @Author: kgzhou
 * @CreateDate: 2019/4/26 10:42
 * @UpdateUser: kgzhou
 * @UpdateDate: 2019/4/26 10:42
 * @UpdateRemark: 更新说明：
 * @Version: 1.0
 */
public class SpUtils {
    private static final String TAG = SpUtils.class.getSimpleName();
    private static final String GPS_WAY="GPS_WAY";
    private static final String TEST_TIMES="TEST_TIMES";
    private static final String INTERVAL_TIME="INTERVAL_TIME";
    private static final String OVERTIME="OVERTIME";
    private static final String RETRYTIMES="RETRYTIMES";
    private static final String LONGITUDE="LONGITUDE";
    private static final String LATITUDE="LATITUDE";
    public static final String COLD_START="COLD_START";
    public static final String HOT_START="HOT_START";

    //存储重试次数设置
    public static void setRetryTimes(Context context,String retryTimes){
        putStringPreference(context,RETRYTIMES,retryTimes);
    }

    //获取重试次数设置，默认2次
    public  static String getRetrytimes(Context context){
        return getStringPreference(context,RETRYTIMES,"2");
    }

    //存储超时时间设置
    public static void setOverTime(Context context,String overtime){
        putStringPreference(context,OVERTIME,overtime);
    }
    //获取间隔时间设置，默认20s
    public static String getOverTime(Context context){
       return getStringPreference(context,OVERTIME,"20");
    }


    //存储间隔时间设置
    public static void setIntervalTime(Context context,String intervalTime){
        putStringPreference(context,INTERVAL_TIME,intervalTime);
    }

    //获取间隔时间，默认10s
    public static  String getIntervalTime(Context context){
        return getStringPreference(context,INTERVAL_TIME,"10");
    }

    //存储循环次数
    public static  void setTestTimes(Context context,String times){
        putStringPreference(context,TEST_TIMES,times);
    }

    //获取循环次数，默认5次
    public static  String getTestTimes(Context context){
        return getStringPreference(context,TEST_TIMES,"5");
    }

    //存储GPS启动方式
    public static void setStartWay(Context context,String way){
        putStringPreference(context,GPS_WAY,way);
    }

    //获取GPS启动方式
    public static String getStartWay(Context context){
       return getStringPreference(context,GPS_WAY,HOT_START);
    }

    //存储输入的经度
    public static void setInputLongitude(Context context,String longitude){
        putStringPreference(context,LONGITUDE,longitude);
    }

    //获取输入的经度
    public static String getInputLongitude(Context context){
        return getStringPreference(context,LONGITUDE,"0.0");
    }

    //存储输入的纬度
    public static void setInputLatitude(Context context,String latitude){
        putStringPreference(context,LATITUDE,latitude);
    }

    //获取输入的纬度
    public static String getInputLatitude(Context context){
        return getStringPreference(context,LATITUDE,"0.0");
    }

    //获取SharedPreferences对象
    private static SharedPreferences getSharePreference(Context context) {
        return context.getSharedPreferences( context.getPackageName()+"_SharedPreferences", Context.MODE_PRIVATE);
    }

    //存放String类型的轻量存储数据
    public static void putStringPreference(Context context, String key, String value) {
        getSharePreference(context).edit().putString(key, value).apply();
    }


    //获取String类型的轻量存储数据
    public static String getStringPreference(Context context, String key, String def) {
        return getSharePreference(context).getString(key, def);
    }



}
